package com.example.photograph.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 用户订单对象 sys_order
 * 
 * @author wuyj
 * @date 2021-03-06
 */
public class SysOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单ID */
    private Long orderId;

    /** 用户ID */
    private Long userId;

    /** 套餐ID */
    private Long bagId;

    /** 订单状态（0待选片 1待定片 2待取片 6已完成 9退订） */
    private String orderStatus;

    /** 已付金额 */
    private Long payMoney;

    /** 欠收金额 */
    private Long debtMoney;

    /** 选片时间 */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date choiceTime;

    /** 定片时间 */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date decideTime;

    /** 取片时间 */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date getTime;

    /** 用户名称 */
    private String userName;

    /** 套餐名称 */
    private String bagName;

    /** 订单状态（0待选片 1待定片 2待取片 6已完成 9退订） */
    private String orderStatusValue;

    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setBagId(Long bagId) 
    {
        this.bagId = bagId;
    }

    public Long getBagId() 
    {
        return bagId;
    }
    public void setOrderStatus(String orderStatus) 
    {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatus() 
    {
        return orderStatus;
    }
    public void setPayMoney(Long payMoney) 
    {
        this.payMoney = payMoney;
    }

    public Long getPayMoney() 
    {
        return payMoney;
    }
    public void setDebtMoney(Long debtMoney) 
    {
        this.debtMoney = debtMoney;
    }

    public Long getDebtMoney() 
    {
        return debtMoney;
    }
    public void setChoiceTime(Date choiceTime) 
    {
        this.choiceTime = choiceTime;
    }

    public Date getChoiceTime() 
    {
        return choiceTime;
    }
    public void setDecideTime(Date decideTime) 
    {
        this.decideTime = decideTime;
    }

    public Date getDecideTime() 
    {
        return decideTime;
    }
    public void setGetTime(Date getTime) 
    {
        this.getTime = getTime;
    }

    public Date getGetTime() 
    {
        return getTime;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getBagName() {
        return bagName;
    }

    public void setBagName(String bagName) {
        this.bagName = bagName;
    }

    public String getOrderStatusValue() {
        return orderStatusValue;
    }

    public void setOrderStatusValue(String orderStatusValue) {
        this.orderStatusValue = orderStatusValue;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("orderId", getOrderId())
            .append("userId", getUserId())
            .append("bagId", getBagId())
            .append("orderStatus", getOrderStatus())
            .append("payMoney", getPayMoney())
            .append("debtMoney", getDebtMoney())
            .append("choiceTime", getChoiceTime())
            .append("decideTime", getDecideTime())
            .append("getTime", getGetTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
